The Internet is undergoing explosive growth in order to support a dramatic increase in users, applications and services. This growth is resulting in network congestion as the existing Internet infrastructure struggles to handle the increased load. Internet service providers and their customers are looking for ways to cost effectively upgrade the existing infrastructure to handle this growth and be positioned for continued growth in the future. Faster and more affordable Internet access techniques are required.
Some background of how networks conventionally operate is briefly discussed. Conventionally, separate computing devices are connected to one another through networks that forward information based upon the destination IP address provided in the Internet Protocol. Devices in the same geographical proximity are typically connected by Local Area Networks (LANs) such as Ethernet networks. These computing devices learn the IP address (identity) of other computing devices on the same LAN by broadcasting an address resolution request to all computing devices on the LAN. Computing devices that are not on the same LAN require assistance in locating each other and typically communicate with an intermediary device whose purpose is to determine a path between the two devices and forward information onto this path. These intermediate devices typically use routing protocols to determine this path and are frequently referred to as routers or route switches.
In short, routers are devices that direct traffic between hosts, typically by building routing tables that contain information on the best paths to all destinations that they know how to reach. Routers use a hop-by-hop mechanism to keep track of the next-hop information in order to forward packets to their ultimate destination.
As networks have become more complex, routers have been asked to perform several other functions, besides routing. Some routers can be used to enable computing devices to transfer information to and from other computing devices in different geographical areas. These networks are called Wide Area Networks (WANs), and routers connect computing devices on LANs to one or more WAN links via physical WAN interfaces integrated into the router or provided by an external WAN access device. These routers perform routing, aggregation of WAN links and provide physical connections to the WAN links, as shown in FIG. 1A. Link aggregation is the bonding of multiple channels into a single, higher speed connection.
The increase in transfer of electronic information over the Internet is putting an increased burden on routers. The current Internet infrastructure depends on highly integrated routers or a combination of router and data service units (DSU) products to provide high speed access to the Internet.
It is desired to provide a method and apparatus to forward data (such as IP datagrams) across a network without invoking routing. Existing alternatives for forwarding IP datagrams across a device without forcing that device to become another router on the network are inadequate for this objective. For example, bridging and static forwarding are two standards-compliant vendor interoperable solutions in use today, but both solutions were unable to meet the objectives for forwarding.
One possible alternative is IEEE 802.1d: Transparent bridging (switching), which is widely deployed in interconnecting Ethernet switched Local Area Networks. A transparent bridge operates in promiscuous mode, accepting every frame transmitted on all the LANs to which it is connected. When a bridge is first plugged into the network, its tables are empty. So it uses a flooding algorithm and outputs every frame on the LANs to which the bridge is connected, except for on the LAN the frame came on. The bridge then uses an algorithm called “Backward Learning”. Since the bridges operate in promiscuous mode, they look at the source MAC address to determine which machine is accessible on which LAN. They use this information to build their forwarding table. It uses this table information to forward subsequent packets to the host whose address it had learned previously.
Bridging has several severe disadvantages when considered for use between heterogeneous network links. Bridging is not feasible on such links because frames on the WAN links do not have data link layer MAC headers, while frames on the LAN segments do. Therefore, a bridge would be unable to perform the backward learning algorithm on WAN links. If a bridging solution was used, then all LAN traffic would have to be flooded on all the WAN links. This is extremely wasteful of bandwidth and prevents scaling to levels demand by service providers. Further, bridging does not support load balancing and multi-homing. To summarize, bridging makes inefficient use of WAN links; broadcast messages waste expensive bandwidth; and bridging does not support efficient load-balancing in multi-homing applications.
Another potential alternative is static forwarding, which refers to routes being manually entered into the routers. Network reachability is not dependent on the state of the network itself. Whether a destination is up or down, the static routes would remain in the table and traffic would be sent towards the destination. Static forwarding is a less than optimal solution for WAN aggregation and forwarding. Since the ISP community is organized in a tiered manner, most Tier 1 ISPs have smaller ISPs as customers. Therefore, using static addresses, when a customer ISP adds or removes customers, routes must be manually added or removed, as shown in FIG. 3. This can become quite cumbersome and unmanageable. Additionally, without running dynamic routing protocols, intelligent route selection can not be made. Network problems can not be bypassed and service interruptions can occur. To summarize, static forwarding does not scale to higher-tier ISP's; higher-tier ISP's have other ISP's as customers, and static forwarding requires manual updating even when the other ISP's customers change; and static forwarding does not provide for intelligent routing.